#pragma once
#include "dispatch.h"

class Timer
{
private:
	//
	//Private variables
	//
	int count; //keeping score or some sort of other timer
	bool timer_halt; //if timer is halted
	float interval; //timer intervals
	Dispatch *dispatch; //where events go
public:
	//
	//Constructor
	//
	Timer(int init_count, float init_interval,Dispatch *dispatchx);
	~Timer(void);
	//
	//Action methods
	//
	void pulse(); //pulses on a per second bases 
	void resetCount(); //resets the count
	void Action(void); //does some action
	void halt(); //halts the timer
	void resume(); //resumes the timer
	//
	//Getters
	//
	bool IsStopped(); //checks if timer is stopped
	float getInterval(); //gets interval
	
};
